#工具类中进行封装那些
# 1获取驱动 获取的驱动对象这是一个方法
#2 驱动完毕后要进行关闭驱动操作（方法） 这里的驱动有点像session 也就是接口自动化里的session 通过session来获令牌
#3参数化json方法安装
import json
import time

from selenium import webdriver
from selenium.webdriver.common.by import By


class UtilsDriver:
    _driver = None
    @classmethod
    def Get_driver(cls):
        if cls._driver is None:
          cls._driver=webdriver.Chrome()#获取驱动对象 方法两大禁忌 初始化 和return 其中字典类表要输出才能return
          cls._driver.maximize_window()  # 窗口最大化
          return cls._driver#调用时将值返回
    @classmethod
    def Close_driver(cls):
        if cls._driver is not None:
            cls._driver.close()
            cls._driver=None
def Get_msg():
        time.sleep(1)
        return UtilsDriver.Get_driver().find_element(By.CSS_SELECTOR,".lay").text#获取元素中的信息


def Get_datebase(filename):#这里简单的说明一下为什么不将方法放进我们的类中 因为我们要封装我们的文件地址 所以 就要将文件地址传入我们的参数中
    with open("",encoding="utf-8") as f:#打开文件 json存放地址
        date2=[]
        date1=json.load(f)
        for case in date1:
            for x in case.values():
                case_tuple = x.values()
                date2.append(tuple(case_tuple))
        print(date2)  # 注意 为什么没有 对于列表 元祖 字典必须要将结果打印才能调用
        return date2



